forked from OSchip/llvm-project
52 lines
1.3 KiB
C++
52 lines
1.3 KiB
C++
//===-- main.cpp ------------------------------------------------*- C++ -*-===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is distributed under the University of Illinois Open Source
|
|
// License. See LICENSE.TXT for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
#include <stdio.h>
|
|
|
|
class Point {
|
|
public:
|
|
int x;
|
|
int y;
|
|
Point(int a, int b):
|
|
x(a),
|
|
y(b)
|
|
{}
|
|
};
|
|
|
|
class Data {
|
|
public:
|
|
int id;
|
|
Point point;
|
|
Data(int i):
|
|
id(i),
|
|
point(0, 0)
|
|
{}
|
|
};
|
|
|
|
int main(int argc, char const *argv[]) {
|
|
Data *data[1000];
|
|
Data **ptr = data;
|
|
for (int i = 0; i < 1000; ++i) {
|
|
ptr[i] = new Data(i);
|
|
ptr[i]->point.x = i;
|
|
ptr[i]->point.y = i+1;
|
|
}
|
|
|
|
printf("Finished populating data.\n");
|
|
for (int j = 0; j < 1000; ++j) {
|
|
bool dump = argc > 1; // Set breakpoint here.
|
|
// Evaluate a couple of expressions (2*1000 = 2000 exprs):
|
|
// expr ptr[j]->point.x
|
|
// expr ptr[j]->point.y
|
|
if (dump) {
|
|
printf("data[%d] = %d (%d, %d)\n", j, ptr[j]->id, ptr[j]->point.x, ptr[j]->point.y);
|
|
}
|
|
}
|
|
return 0;
|
|
}
|