1#include <stdio.h>
2#include <vector>
3#include <string>
4
5struct struct_for_copying
6{
7    struct_for_copying (int in_int, double in_double, const char *in_string) :
8        int_value(in_int),
9        double_value(in_double),
10        string_value (in_string)
11    {
12
13    }
14    struct_for_copying()
15    {
16        struct_for_copying (0, 0, "");
17    }
18
19    int int_value;
20    double double_value;
21    std::string string_value;
22};
23
24int main (int argc, char **argv)
25{
26    struct_for_copying input_struct (150 * argc, 10.0 * argc, argv[0]);
27    struct_for_copying output_struct;
28    int some_int = 44;
29    double some_double = 34.5;
30    double other_double;
31    size_t vector_size;
32    std::vector<struct_for_copying> my_vector;
33
34    printf ("Here is some code to stop at originally.  Got: %d, %p.\n", argc, argv);
35    output_struct = input_struct;
36    other_double = (some_double * some_int)/((double) argc);
37    other_double = other_double > 0 ? some_double/other_double : some_double > 0 ? other_double/some_double : 10.0;
38    my_vector.push_back (input_struct);
39    vector_size = my_vector.size();
40
41	return vector_size == 0 ? 0 : 1;
42}
43