It's more difficult than turning a good C/C++ programmer into a good Java programmer. The emphasis is "good" here. Any people can program in any language poorly. Good C++ programmers must understand pointers well. One of the most important concepts in C++ is iterator which is a generalization of C pointer via operator overloading, which makes many algorithms truly generic in C++.
One great indicator whether NCGs get it, is their performance in operating system courses. If they passed an OS class with heavy project workload (like implementing any OS components in whatever languages) with flying colors and that they loved it, chances are they're among the best students you can get.