I have not used C++ for ages but I recall that one could use
std::transform on a vector
something like
#include <functional>
or
#include <algorithm>
std::transform(v.begin(), v.end(), std::sin)

and see the result
std::copy(v.begin(), s.end(), std::ostream<int>(std::cout, " : "));
hth, Daniel

ps: well about ploting C++ has nothing built-in, nothing standard so to
say, you will have to use yours op libraries
nowdays I code in python there you could use Tk or ploting modules
matplotlib, scipy and Numeric

How would I be able to add white noise to the sinewave signal over 1000 samples?

Since no one has responded ....
Here's what I would do but I can't certify anything.
Decide how much noise you want and use rand() to generate a voltage in that
range for a
particular sample. For each sample add the two components to get signal
plus noise. Make a second drawing from rand() to choose the polarity of the
noise. You could speed that up, at the expense of clarity, by selecting a
bit from a single drawing to define the polarity

std::transform on a vector something like #include <functional> or #include <algorithm>
It's in <algorithm>
std::transform(v.begin(), v.end(), std::sin)
Then don't forget to fill the vector with increasing angles first.

and see the result std::copy(v.begin(), s.end(), std::ostream<int>(std::cout, " : "));
Perhaps you mean:

ps: well about ploting C++ has nothing built-in, nothing standard so to say, you will have to use yours op libraries nowdays I code in python there you could use Tk or ploting modules matplotlib, scipy and Numeric

Not so. You can plot on the text console with letters or punctuations,
although not as good looking as most other means.